//定义路由中间件
const homeRouter = require('express').Router();
const stuModel = require('../model/stu');
//向数据库插入数据
/* stuModel.insertMany([
  {
    name: '白粉花',
    age: 14,
    hobby: '肌肉刑警'
  },
  {
    name: '白梅梅',
    age: 15,
    hobby: '白粉花'
  }
]).then(res1=>{
  console.log(res1);
}).catch(err=>{
  console.log(err);
}) */

//查询路由
homeRouter.get('/home', (req, res) => {
  //将结果根据id进行降序排列
  stuModel.find().sort({
    _id: -1
  }).then(ret => {
    //res.render方法第一个参数是模板名称，第二参数是以对象形式作为变量传入ejs模板中渲染
    res.render('home', {
      result: ret
    })
  }).catch(err => {
    res.render('home', {
      result: []
    })
  })
})

//增加路由
homeRouter.post('/addStu', (req, res) => {
  stuModel.insertMany(req.body).then(ret => {
    res.send({
      code: 0,
      msg: '新增成功'
    })
  }).catch(err => {
    res.send({
      code: -1,
      msg: '新增失败'
    })
  })
})
//删除路由
homeRouter.get('/delStu', (req, res) => {
  stuModel.deleteOne({
    _id: req.query.id
  }).then(ret => {
    res.send({
      code: 0,
      msg: '删除成功'
    })
  }).catch(err => {
    res.send({
      code: -1,
      msg: '删除失败'
    })
  })
})
//修改路由
homeRouter.post('/update', (req, res) => {
  stuModel.updateOne(
    {
      _id: req.body.id
    },
    {
      name: req.body.name
    }).then(ret=>{
      res.send({
        code: 0,
        msg: "修改成功"
      })
    }).catch(err=>{
      res.send({
        code: -1,
        msg: "修改失败"
      })
    })
})

//导出路由
module.exports = homeRouter;